package liangtWorkSpace.simple;

import java.util.HashMap;

/**
 * @ClassName RomanToInt
 * @Description : 罗马数转为int
 * @Author : LiangT
 * @Date : 2020/6/12 10:46
 */
public class RomanToInt {
    public int romanToInt(String s) {
        HashMap<Character, Integer> map = new HashMap();
        map.put('I',1);
        map.put('V',5);
        map.put('X',10);
        map.put('L',50);
        map.put('C',100);
        map.put('D',500);
        map.put('M',1000);
        int sum = map.get(s.charAt(0));
        for (int i =1; i < s.length();i++){
            sum +=map.get(s.charAt(i));

            if ((s.charAt(i)=='V' || s.charAt(i)== 'X')&& s.charAt(i-1)=='I'){
                sum-=1*2;
            }
            if ((s.charAt(i)=='L' || s.charAt(i)== 'C')&& s.charAt(i-1)=='X'){
                sum-=10*2;
            }
            if ((s.charAt(i)=='D' || s.charAt(i)== 'M')&& s.charAt(i-1)=='C'){
                sum-=100*2;
            }
        }
        return sum;
    }
}
